
@mixin label-left-center-right {
  > label:first-child{
    padding-top:12px;
    padding-right:4px;
  }
  > label.dense:first-child{
    padding-top:6px;
  }
}

.form-label > label:first-child {
  color: var(--q-color-primary);
  font-weight: bold;
}
.label-top.form-label {
  display: block !important;
}
.label-left.form-label,
.label-center.form-label,
.label-right.form-label {
  display: flex !important;
  @include label-left-center-right;
}
.form-label {
  &.label-left > label:first-child {
    text-align:left !important;
  }
  &.label-center > label:first-child {
    text-align:center !important;
  }
  &.label-right > label:first-child {
    text-align:right !important;
  }
  &.label-fit-content > label:first-child {
    width:auto !important;
  }
  &.label-xsmall > label:first-child {
    width:50px !important;
  }
  &.label-small > label:first-child {
    width:70px !important;
  }
  &.label-medium > label:first-child {
    width:90px !important;
  }
  &.label-large > label:first-child {
    width:110px !important;
  }
  &.label-xlarge > label:first-child {
    width:150px !important;
  }
  &.label-xxlarge > label:first-child {
    width:200px !important;
  }
}

.label-custom {
  ::v-deep {
    .form-label {
      display:flex;
      @include label-left-center-right;
    }
  }
  &.label-fit-content {
    ::v-deep {
      .form-label > label:first-child {
        width:auto;
      }
    }
  }
  &.label-xsmall {
    ::v-deep {
      .form-label > label:first-child {
        width:50px;
      }
    }
  }
  &.label-small {
    ::v-deep {
      .form-label > label:first-child {
        width:70px;
      }
    }
  }
  &.label-medium {
    ::v-deep {
      .form-label > label:first-child {
        width:90px;
      }
    }
  }
  &.label-large {
    ::v-deep {
      .form-label > label:first-child {
        width:110px;
      }
    }
  }
  &.label-xlarge {
    ::v-deep {
      .form-label > label:first-child {
        width:150px;
      }
    }
  }
  &.label-xxlarge {
    ::v-deep {
      .form-label > label:first-child {
        width:200px;
      }
    }
  }
  &.label-left {
    ::v-deep {
      .form-label > label:first-child {
        text-align:left;
      }
    }
  }
  &.label-center {
    ::v-deep {
      .form-label > label:first-child {
        text-align:center;
      }
    }
  }
  &.label-right {
    ::v-deep {
      .form-label > label:first-child {
        text-align:right;
      }
    }
  }
}
